package com.share.pattern.observer.v2;

import java.util.Scanner;

/**
 * 
 * @author Johnny Tam 
 * * v0.2版本 观察者模式
 * 
 * 问题：
 * 观察者都抽象了，那对应的 
 * 前台具体的通知者，也应该抽象， 
 */
public class ObserverDemoV02 {

	public static void main(String[] args) {
		//前台
		Secretary qiantai = new Secretary();
		
		//看股票的同事
		StockObserver tongshi1 = new StockObserver("曹老师", qiantai);
		StockObserver tongshi2 = new StockObserver("薇薇老师", qiantai);
		
		//看NBA同事
		NBAObserver tongshi3 = new NBAObserver("姚明老师", qiantai);
		
		//前台记下3为同事
		qiantai.Attach(tongshi1);
		qiantai.Attach(tongshi2);
		
		qiantai.Attach(tongshi3);
		
		//发现老板回来了， 赶紧通知
		qiantai.setAction("老板回来了！");
		
		//通知3为同事
		qiantai.Notify();
	}

}
